[객체지향언어]
-
구현기능을 객체로 구분가능
-
JavaScript classes
-
introduced in ES6 (중간에 도입된 개념)
-
syntactical sugar over prototype-based inheritance (문법적인 도입)
Class 정의와 종류
class : 연관된 fields(속성), methods(행동)의 묶음
data class : methods 없이 fields만 있는 경우
직관적인 이해를 위한 비유 : 청사진, template, 붕어빵 틀
Class 특성
Encapsulation(캡슐화) : 내/외부에서 보여지는 변수를 분류
상속과 다양성
선언 방식
- Class declarations
2. Getter and Setter
: 입력값이 잘못된 경우 오류 방지를 위해 사전에 정정하는 역할 수행
3. Public & Private Fields
: 최신 기능으로 지원 브라우저 적음.
4. static properties and methods
: 최신 기능으로 지원 브라우저 적음.
: class 자체에 연결된 값,methods
: object에 상관없이 공통, 반복적으로 사용되는 값을 static으로 지정하면 메모리 절약, 효율증대
5. 상속과 다양성
: 반복, 공통되는 속성 값을 재사용
6. Class checking : instanceOf
:좌측의 object가 우측의 class에 의해 만들어진 것인지 체크하여 true/false 값 표시
<object>
직관적인 이해를 위한 비유 : instance of a class, created many times, data in, 붕어빵 재료인 팥, 슈크림 etc
<참고자료>
JS object - MDN reference
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
이 노트는 드림코딩 앨리님의 유튜브 강의를 듣고 작성하였습니다.
'개발' 카테고리의 다른 글
프론트엔드 테스트 전략 (시각적 테스트, 기능적 테스트) (0) | 2022.06.21 |
---|---|
When should you use single quotes or double quotes for strings? (0) | 2021.01.06 |
CSS Flex box : flex-direction:reverse;/justify-content:flex-end; 비교 예시 (0) | 2020.12.28 |
[TIL] 20.07.22-24 비동기 서버 통신 방식 Ajax로 API 활용하기 (0) | 2020.07.25 |
Comment